Root Zanli
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
o5t6x7pgljbm
/
public_html
/
admin
/
app
/
V2
/
Services
/
Filename :
UserActivityService.php
back
Copy
<?php namespace App\V2\Services; use App\Libraries\Helpers; use App\Models\UserActivityHistory; use Illuminate\Pagination\LengthAwarePaginator; class UserActivityService { public function addActivityHistory($userId, $groupId, $activityDetails, $activitySubDetails, $sideEffectDetails) { // Create a new UserActivityHistory instance $activity = new UserActivityHistory(); $activity->user_id = $userId; $activity->group_id = $groupId; $activity->activity_details = $activityDetails; $activity->activity_sub_details = $activitySubDetails; $activity->side_effect_details = $sideEffectDetails; // Save the activity to the database $activity->save(); // Return the saved activity return $activity; } public function getLatestActivityHistory($userId, $group_ids=[], $perPage = 10, $page = 1) { // Retrieve the activity history for the user $query = UserActivityHistory::where('user_id', $userId); if($group_ids!= null && !empty($group_ids)) $query->whereIn( 'group_id', $group_ids); $activityHistory = $query->latest() ->paginate($perPage, ['*'], 'page', $page); return $activityHistory; } public static function getDetailsForSignupForParent($parent_user, $current_group, $tuit_added){ $tuit = Helpers::formatDecimanPointsTUIT($tuit_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $parent_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="You received $tuit TUIT from Coins For College"; $user_activity->activity_sub_details="For creating new account"; $user_activity->side_effect_details="Received $tuit TUIT"; return $user_activity; } public static function getDetailsForSignupForChild($child_user, $current_group, $sp_added){ $sp = Helpers::formatDecimanPointsSP($sp_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $child_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="You received $sp_added SP from Coins For College"; $user_activity->activity_sub_details="For creating new account"; $user_activity->side_effect_details="Received $sp SP"; return $user_activity; } public static function getDetailsForNewTaskAddedForParent($parent_user, $current_group, $task, $tuit_added){ $tuit = Helpers::formatDecimanPointsTUIT($tuit_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $parent_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="New task created: {$task->task_title}"; $user_activity->activity_sub_details="For adding new task: {$task->task_title}"; $user_activity->side_effect_details="Received $tuit TUIT"; return $user_activity; } public static function getDetailsForTaskAssignedByParentForParent($parent_user, $current_group, $task, $sp_added){ } public static function getDetailsForTaskAssignedByParentForChild($parent_user, $child_user, $current_group, $task){ } public static function getDetailsForTaskCompletedByChildForParent($parent_user, $child_user, $current_group, $task, $tuit_added){ $tuit = Helpers::formatDecimanPointsTUIT($tuit_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $parent_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="Earned {$tuit} TUIT for completion of task \"{$task->task_title}\" by {$child_user->full_name}"; $user_activity->activity_sub_details="For task completion: By {$child_user->full_name}"; $user_activity->side_effect_details="Received $tuit TUIT"; return $user_activity; } public static function getDetailsForTaskCompletedByChildForChild($parent_user, $child_user, $current_group, $task, $sp_added){ } public static function getDetailsForNewRewardCreatedForParent($parent_user, $current_group, $reward, $tuit_added){ $tuit = Helpers::formatDecimanPointsTUIT($tuit_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $parent_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="New reward created: {$reward->product_name}"; $user_activity->activity_sub_details="For adding new reward: {$reward->product_name}"; $user_activity->side_effect_details="Received $tuit TUIT"; return $user_activity; } public static function getDetailsForTaskApprovedOrRejectedForParent($parent_user, $child_user, $current_group, $task, $new_status, $tuit_added){ $tuit = Helpers::formatDecimanPointsTUIT($tuit_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $parent_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="Claim approved/rejected: {$task->task_title}"; $user_activity->activity_sub_details="For reviewing a task: {$task->task_title}"; $user_activity->side_effect_details="Received $tuit TUIT"; return $user_activity; } public static function getDetailsForTaskApprovedOrRejectedForChild($parent_user, $child_user, $current_group, $task, $new_status, $sp_added){ $sp = Helpers::formatDecimanPointsSP($sp_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $child_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; if($new_status == 'APPROVED'){ $user_activity->activity_details="Claim approved - Task: {$task->task_title}, Reviewed By: {$parent_user->full_name}"; $user_activity->activity_sub_details="For claim approval - Task: {$task->task_title}, Reviewed By: {$parent_user->full_name}"; $user_activity->side_effect_details="Received $sp SP"; } else if($new_status == 'REJECTED') { $user_activity->activity_details="Claim rejected - Task: {$task->task_title}, Reviewed By: {$parent_user->full_name}"; $user_activity->activity_sub_details="For claim rejected - Task: {$task->task_title}, Reviewed By: {$parent_user->full_name}"; $user_activity->side_effect_details="No SP awarded"; } return $user_activity; } public static function getDetailsForRewardPurchasedByChildForChild($parent_user, $child_user, $current_group, $reward, $sp_deducted){ $sp = Helpers::formatDecimanPointsSP($sp_deducted); $user_activity = new UserActivityHistory(); $user_activity->user_id = $child_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="$sp SP deducted by Coins For College"; $user_activity->activity_sub_details="For purchasing reward: {$reward->product_name}"; $user_activity->side_effect_details="Deducted $sp SP"; return $user_activity; } public static function getDetailsForPresentForChild($child_user, $current_group, $sp_added){ $sp = Helpers::formatDecimanPointsSP($sp_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $child_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="You received $sp_added SP from Coins For College"; $user_activity->activity_sub_details="For attending school"; $user_activity->side_effect_details="Received $sp SP"; return $user_activity; } public static function getDetailsForAbsentForChild($child_user, $current_group, $sp_reduced){ $sp = Helpers::formatDecimanPointsSP($sp_reduced); $user_activity = new UserActivityHistory(); $user_activity->user_id = $child_user->user_id; $user_activity->group_id = $current_group != null ? $current_group->group_id : -1; $user_activity->activity_details="$sp_reduced SP deducted by Coins For College"; $user_activity->activity_sub_details="For missed school attendance"; $user_activity->side_effect_details="Deducted $sp SP"; return $user_activity; } public static function getDetailsForTUITRewardedForParent($parent_user, $current_group, $admin, $tuit_added){ $tuit = Helpers::formatDecimanPointsTUIT($tuit_added); $user_activity = new UserActivityHistory(); $user_activity->user_id = $parent_user->user_id; $user_activity->group_id = -1; $user_activity->activity_details="Received airdrop of {$tuit_added} TUIT from Coins For College"; $user_activity->activity_sub_details="Airdrop"; $user_activity->side_effect_details="Received $tuit_added TUIT"; return $user_activity; } public static function getDetailsForTUITDeductionForParent($parent_user, $current_group, $admin, $tuit_deducted){ $tuit = Helpers::formatDecimanPointsTUIT($tuit_deducted); $user_activity = new UserActivityHistory(); $user_activity->user_id = $parent_user->user_id; $user_activity->group_id = -1; $user_activity->activity_details="{$tuit_deducted} TUIT debited by Coins For College"; $user_activity->activity_sub_details="Balance adjusted"; $user_activity->side_effect_details="Debited $tuit_deducted TUIT"; return $user_activity; } }